/*
 * EtatRobot.h
 *
 *  Created on: 12 nov. 2012
 *      Author: nolan
 */

#ifndef ETATROBOT_H_
#define ETATROBOT_H_

#include "../Robot.h"

class Robot;
class EtatEnRoute;

class EtatRobot {

private:
	EtatRobot* etatPrecedent;
	string StringEtatPrecedent;
public:

	EtatRobot() {
	}

	virtual void avancer();
	virtual void tourner(Robot*);
	virtual void saisir(Robot*);
	virtual void poser(Robot*);
	virtual int peser();
	virtual void rencontrerObstacle(Robot*);
	virtual int evaluerObstacle();
	virtual void figer(Robot*);
	virtual void repartir(Robot*);

	EtatRobot* getEtatPrecedent() {
		return etatPrecedent;
	}
	void setEtatPrecedent(EtatRobot* e) {
		etatPrecedent = e;
	}
	string getStringEtatPrecedent() {
		return StringEtatPrecedent;
	}
	void setStringEtatPrecedent(string s) {
		StringEtatPrecedent = s;
	}
	class BadAction {
	};
};

#endif /* ETATROBOT_H_ */
